#ifndef __Logic__
#define __Logic__
#include "Break.h"

class CLogic
{
protected:
	static CBreak* m_pBreak ;
	static int Equal( CArc*const pFirst , CArc*const pSecond ) ;
	static void Division( const CArcArray* pFirst , const CArcArray* pSecond, CArcArray* pOutput ) ;
	static int Verify( CArc* const pArc ) ;
	static void Build( CArcArray* pArcArray , CArcArray* pArea ,int bState=3) ;
public:
	static void BreakSet() ;
	static void BreakRemove() ;
	static CArea* All(const CArcArray* pFirst , const CArcArray* pSecond,int bState=3) ;
	static CArea* Unite(const CArcArray* pFirst ,const CArcArray* pSecond ) ;
	static CArea* Join(const CArcArray* pFirst ,const CArcArray* pSecond ) ;
	static CArea* Subtract(const CArcArray* pFirst ,const CArcArray* pSecond ) ;
} ;
#endif